In recent years, cellular or personal communication service type mobile telephones have emerged as a must-have appliance among mobile professionals and consumers alike, growing in popularity every year since they were first introduced. The public has come to accept that mobile service enhances business and personal communications and may contribute to personal security. Consequently, mobile communication is becoming increasingly popular, particularly for voice grade telephone services, and more recently for data communication services.
In mobile networks, the users' mobile stations today are relatively ‘smart’ programmable devices, offering a wide range of communication features. Many such devices are also programmable to run other applications of interest to the users. Activation of service, programming of service features and installation of user-desired applications all entail loading software into the mobile station. For convenience, most such software loading of programming to a mobile station is performed by transmission via the wireless link, that is to say, over-the-air. A variety of techniques have been proposed for over-the-air programming of software into mobile stations.
U.S. Pat. No. 6,622,017 to Hoffman entitled “Over-the-air programming of wireless terminal features” discloses a technique for distributing user selected feature software to mobile terminal devices. A terminal user selects a desired feature or set of features and contacts a service provider. The provider's equipment downloads software programming corresponding to the desired feature into the memory of the terminal device. The software takes the form of a plug-in module, written to the program interface specification of the core software of the terminal device. When loaded into memory and interfaced through the core software, the module allows the terminal device to implement the desired feature. Features can be added, upgraded or replaced at any time by downloading new feature modules into the memory.
U.S. Pat. No. 6,587,684 to Hsu et al. entitled “Digital wireless telephone system for downloading software to a digital telephone using wireless data link protocol” teaches downloading software for digital telephone services to a mobile station, using a client browser. The digital telephone initiates a data call to an interworking unit via a digital wireless telephone network, using a prescribed wireless data protocol such as IS-95A. The interworking unit recovers the payload of the wireless data packets to establish a two-way data link with the digital telephone. The interworking unit sends data messages to a destination server across a second two-way data link in a packet switched network to establish a two way session between the digital telephone and the destination server. The user of the digital telephone can thus communicate with the server via a two-way application-layer session using hypertext-based messaging. The digital telephone can navigate between different servers on the packet switched network for activation of different digital telephone services, and for downloading new software or updating existing software related to the digital telephone services.
U.S. Pat. No. 6,549,770 to Marran entitled “Over the air programming and/or service activation” discloses techniques for managing wireless digital communications subscribers mobile digital cellular telephones. The wireless network has the capability to download programming data over-the-air directly to the subscriber's mobile device, which communicates with an intelligent system that processes complex inputs, discovers problems from the complex inputs, and formulates individualized solutions for discovered problems. The intelligent system also searches the wireless digital communications network for, and retrieves, the necessary data for solving discovered problems; triggers the wireless digital communications network to establish a data link with a subscriber s mobile, digital device; and then directly downloads the necessary data to the subscriber s mobile device over-the-air.
U.S. Pat. No. 5,887,254 to Halonen entitled “Methods and apparatus for updating the software of a mobile terminal using the air interface” discloses a technique for downloading and storing software into a mobile telephone. The download may be initiated after a notice of new software availability from the network. When a new or revised operating program is available the mobile terminal receives a message from the network. Subsequently, the network begins transmitting the new or revised operating program to the mobile terminal, as code blocks. The code blocks can be sent using Short Message Service (SMS) messages or using System Operator Code (SOC) signaling. At the mobile terminal, the received code blocks are passed through the DSP to the MCU, which stores the received code blocks into a memory location for the new program. After the new or revised program is completely received, the MCU changes the Active Memory flag to designate that memory location as the Active memory and a memory location storing the old program as the Idle memory. The MCU then resets itself to an initial state and begins executing code from the memory.
U.S. Pat. No. 6,023,620 Hansson entitled “Method for downloading control software to a cellular telephone” also discloses a push technique for notifying a user and downloading software upgrades. When a new version of the software is available, the update server processor transmits a message via the cellular telephone network to the cellular telephone, offering the option to download the new version of the software. The subscriber is instructed to depress a specific key or keys to initiate the downloading process. The cellular telephone transmits an acceptance code and the telephone number of the cellular telephone to the update service processor. The update server processor receives the acceptance code and telephone number, and when it is ready to download the software, transmits a command instructing the cellular telephone to prepare to receive the new software. The cellular telephone responds to the command by transmitting an acknowledgment message to the update server processor and waits for a data transfer to the cellular telephone. The update server processor transmits the new version of the software to the cellular telephone, and the controller loads the new software into previously inactive memory.
U.S. Pat. No. 6,029,065 to Shah discloses a remote feature code programming technique. A base station determines what features a mobile station will support, and then downloads information to the mobile station to notify the user of the network features that are available. The base station provides the feature codes that are required to access the network features. The mobile station user may select a desired feature, either by selecting a menu location or by entering a familiar sequence of keystrokes. The mobile station converts the selection values into a feature code corresponding to the selected feature, to effectively activate the user-selected feature.
U.S. Pat. No. 6,138,009 to Birgerson discloses a technique for customizing wireless communication units. Software relating to the wireless communication units is provided in a number of servers accessible over a global data communications network, such as the Internet. The disclosed system downloads user selected applications to the mobile station from the Internet. Specifically, Birgerson teaches sending a query through the Internet and downloading software via a File Transfer Protocol (FTP) or Castenet type channel monitoring in combination with an Application Download Protocol (ADP).
U.S. Pat. No. 6,370,389 to Isomursu et al. entitled “Communication network terminal supporting a plurality of applications” discloses a technique for using short message service (SMS) communications to send data messages to a mobile station to activate, and in some cases update, applications in the mobile station. The system offers a menu application, with updating. Apparently, the user can initiate SMS communication to request a download, and a server downloads the application data to the station. The text also suggests use of packet radio service such as the GSM/GPRS (General Packet Radio Service).
Where the software for the mobiles station changes from time to time, it is necessary to use one of these techniques to download updates. Actual implementations of these and other previous techniques for downloading device software updates to wireless mobile stations have relied on proprietary solutions in which the subscriber information is maintained within the software download server. One disadvantage of these solutions is the need for pre-provisioning of the subscriber information by means of the carrier's Billing System or a boot-strap process, which requires the mobile station to establish a connection to the download server and download subscriber information prior to use of the actual software. A second disadvantage is need for sensitive subscriber information such as ESN, MIN, etc. to be passed over the air once a connection is established for the software update downloading. Hence, a need exists for a software update download solution that obviates the need for pre-provisioning and/or does not require sensitive subscriber information to be passed over the air once a download connection is established.